PowerShell Genie

Choose a PowerShell path for the work you do

Guide 11 min read Windows PowerShell 5.1 and PowerShell 7

Documentation: Microsoft Learn

Powershell Learning Paths

Stop guessing what to learn next. Pick a role and follow a short sequence that connects concepts, practice, troubleshooting and real scripts.

Shell foundations

Step-by-step lessons with examples you can run.

12 lessons
  1. What is PowerShell?

    Learn what PowerShell is, how its object pipeline works and how it differs from a traditional command prompt. Explore examples and try the lesson exercise.

  2. Installing PowerShell

    Learn to install and verify PowerShell, identify the executable in use and check your version. Follow practical examples before starting your scripting work.

  3. Check your version and edition

    Check $PSVersionTable, distinguish Windows PowerShell from PowerShell 7 and identify the executable used by a script or scheduled task.

  4. PowerShell 5.1 and PowerShell 7

    Windows PowerShell 5.1 vs PowerShell 7: key differences, .NET Framework vs .NET, and what works where. Know which version to target for your scripts.

  5. Update on Windows without confusing editions

    Update PowerShell 7, distinguish engine updates from module updates and verify which executable your automation uses after the change.

  6. Run commands and scripts from CMD

    Launch powershell.exe or pwsh from CMD, choose -File or -Command, quote paths correctly and inspect the process exit code.

  7. Your first Verb-Noun command

    Every PowerShell command is Verb-Noun. Learn the naming pattern so you can guess Get-Process, Stop-Service and New-Item correctly on the first try.

  8. Get-Help

    Learn to use Get-Help in PowerShell to find syntax, parameters and examples. Explore the help system and practice checking command usage before running.

  9. Get-Command

    Learn to discover PowerShell commands with Get-Command. Filter by verb, noun or module, inspect available commands and practice with explained examples.

  10. Execution Policy

    Identify which policy applies before changing a setting or unblocking a script. Read the command examples and check the expected output.

  11. Providers and PSDrives

    Navigate the registry, certificates and variables like filesystems. Learn PowerShell providers and PSDrives: Get-ChildItem and Set-Location work everywhere.

  12. Modules

    Learn how PowerShell modules package reusable automation. Explore module examples, understand their structure and practice organizing commands for reuse.

Objects and pipelines

Step-by-step lessons with examples you can run.

13 lessons
  1. Objects versus text

    Understand why a displayed table is only a view, and inspect the properties behind it. Read the command examples and check the expected output.

  2. The pipeline

    The pipeline: read the examples, check prerequisites and follow the explanation before using the command in your environment.

  3. Get-Member

    Find the property or method a command actually returns before building a filter around it. Read the command examples and check the expected output.

  4. Variables

    Store a value, inspect its type and avoid treating a display string as reusable data. Read the command examples and check the expected output.

  5. Arrays

    Handle zero, one and many results without changing the meaning of your script. Read the command examples and check the expected output.

  6. Hashtables

    Learn PowerShell hashtables for key-value data. Follow examples for storing and reading entries, inspect the output and practice using structured lookups.

  7. PSCustomObject

    Learn to build PowerShell reporting objects with PSCustomObject. Follow examples for named properties, inspect the output and practice creating structured.

  8. Comparison operators

    PowerShell Comparison operators: read the examples, check prerequisites and follow the explanation before using the command in your environment.

  9. Regex and wildcards

    Stop mixing up PowerShell's two pattern systems. Learn when to use wildcards vs regex, with -like, -match and -replace explained through examples.

  10. Services

    Find services that need investigation without treating every stopped service as a failure. Read the command examples and check the expected output.

  11. Processes

    Learn to inspect CPU and memory usage with PowerShell process commands. Follow examples, interpret process properties and practice investigating programs.

  12. CSV

    Export a predictable table and check imported types before using the values in calculations. Read the command examples and check the expected output.

  13. JSON

    Preserve nested data deliberately and verify the properties after converting it back. Read the command examples and check the expected output.

Build reliable scripts

Step-by-step lessons with examples you can run.

13 lessons
  1. if / elseif / else

    Control script flow with if, elseif and else. Learn condition syntax, comparison operators, and how PowerShell evaluates truthiness in branching logic.

  2. switch

    Learn the PowerShell switch statement for handling multiple cases. Follow worked examples, understand matching behavior and practice choosing the right.

  3. foreach

    Learn to iterate collections with foreach in PowerShell. Follow worked examples, understand how each item is processed and practice writing your own loop.

  4. for / while / do

    Master PowerShell's three remaining loops: for, while, and do. Learn when each runs, how conditions are tested, and avoid infinite loops with clear examples.

  5. Functions

    Return useful objects from a function and keep diagnostic messages out of its data stream. Read the command examples and check the expected output.

  6. Scope

    Learn PowerShell scope and variable visibility. Follow examples showing variable visibility, inspect the results and practice reasoning about script state.

  7. Parameters and validation

    Reject invalid inputs at the boundary and explain what your function accepts. Read the command examples and check the expected output.

  8. Splatting

    Learn how to pass named parameters with a PowerShell hashtable, keep command calls readable and reuse options with splatting.

  9. Advanced functions

    Turn plain functions into advanced functions with [CmdletBinding()]. Get -Verbose, -Debug and common parameters for free, plus pipeline support and validation.

  10. Pipeline binding

    Make your functions accept pipeline input. Learn [Parameter(ValueFromPipeline)], process blocks, and how objects flow between commands.

  11. try, catch and finally

    Handle a failing operation explicitly and keep cleanup separate from success reporting. Read the command examples and check the expected output.

  12. ErrorRecord

    Learn to inspect PowerShell ErrorRecord objects beyond the error headline. Follow diagnostic examples and practice reading exception details to trace.

  13. Verbose and diagnostic streams

    Master PowerShell's six output streams. Learn when to use Write-Verbose, Write-Debug and Write-Warning, and how to redirect each stream.

Windows and Active Directory

Step-by-step lessons with examples you can run.

16 lessons
  1. CIM versus WMI

    Learn the differences between CIM and WMI in PowerShell. Explore the Windows management interface through command examples, explained results and an exercise.

  2. Event logs

    Learn to query Windows event logs with PowerShell. Explore diagnostic and security log examples, interpret the results and practice narrowing a query.

  3. Windows networking

    Replace ipconfig with objects. Use Get-NetAdapter, Get-NetIPAddress and Get-NetRoute from the NetTCPIP module for scriptable network admin.

  4. DNS troubleshooting

    Compare the same DNS question across the resolution paths your application actually uses. Read the command examples and check the expected output.

  5. Firewall administration

    Control Windows Firewall with the NetSecurity module. Get-NetFirewallRule, New-NetFirewallRule and Set-NetFirewallRule with real-world rule examples.

  6. Windows Update commands: inventory and checks

    Inspect installed hotfixes, understand Get-HotFix coverage and distinguish Windows Update automation from PowerShell and module updates.

  7. Active Directory module

    Manage AD users, groups, computers and OUs with the ActiveDirectory module. Installation, key cmdlets like Get-ADUser, and hands-on examples.

  8. AD users

    Query the intended users, request the properties you need, and verify the directory scope. Read the command examples and check the expected output.

  9. AD groups

    Read group membership without confusing a direct member list with effective access. Read the command examples and check the expected output.

  10. AD computers

    Learn to inventory Active Directory computer accounts with PowerShell. Follow query examples, inspect returned properties and practice interpreting the.

  11. AD replication

    Investigate a specific replication partner and partition before attempting recovery. Read the command examples and check the expected output.

  12. FSMO roles

    Identify the affected role and recovery need before deciding to transfer or seize it. Read the command examples and check the expected output.

  13. Sites and Services

    Check client subnet mapping and replication topology as separate parts of a site problem. Read the command examples and check the expected output.

  14. Kerberos and SPNs

    Understand Service Principal Names and how Kerberos authentication works. Diagnose SPN issues that cause silent NTLM fallback or outright auth failures.

  15. GPO troubleshooting

    Trace the effective policy for an affected user and computer instead of guessing from a GPO link. Read the command examples and check the expected output.

  16. AD Sync commands for Microsoft Entra Connect

    Inspect the Entra Connect scheduler, choose Delta or Initial sync and verify connector results before declaring directory synchronization complete.

Remote and cloud administration

Step-by-step lessons with examples you can run.

10 lessons
  1. Remoting

    Separate where a command runs from how its results are returned. Read the command examples and check the expected output.

  2. WinRM

    Learn WinRM prerequisites for Windows PowerShell remoting. Follow the examples, understand connection requirements and practice checking your remoting setup.

  3. SSH remoting

    Learn cross-platform PowerShell remoting over SSH. Review the session examples, understand remote command execution and practice interpreting returned output.

  4. REST APIs

    Learn to call REST APIs with PowerShell and handle structured responses. Follow request examples, inspect returned objects and practice using service data.

  5. Microsoft Graph PowerShell

    Learn Microsoft Graph PowerShell for cloud identity administration. Explore command examples, understand returned objects and practice Microsoft cloud.

  6. Entra users and groups

    Manage Entra ID users and groups through Microsoft Graph with PowerShell. Learn the cmdlets, avoid common pitfalls, and script identity tasks safely.

  7. Exchange Online PowerShell

    Learn Exchange Online PowerShell for mailbox and mail-flow administration. Follow command examples, interpret the output and practice working with cloud mail.

  8. SharePoint Online PowerShell

    Learn SharePoint Online administration with PowerShell. Explore site and permission management examples, inspect results and practice administrative queries.

  9. Teams PowerShell

    Learn Microsoft Teams administration with PowerShell. Follow command examples, inspect returned data and practice using Teams queries in administrative work.

  10. Azure PowerShell

    Learn Azure PowerShell administration with the Az module. Explore command examples, inspect the results and practice working with Azure resources and context.

Jobs, parallelism & performance

Run work in the background, parallelize loops, and measure what your scripts actually cost.

17 lessons
  1. Background jobs

    Run long tasks without blocking your prompt using PowerShell background jobs. Start-Job, Get-Job, Receive-Job and Wait-Job explained with practical examples.

  2. Thread jobs

    Learn lightweight PowerShell concurrency with thread jobs. Follow examples for starting work and collecting results, then practice inspecting job behavior.

  3. ForEach-Object -Parallel

    Speed up loops with ForEach-Object -Parallel in PowerShell 7. Run iterations concurrently in separate runspaces and learn throttle limits and gotchas.

  4. Runspaces

    Learn how PowerShell runspaces support concurrent work. Explore execution examples, understand the output and practice the concepts behind parallel.

  5. Performance measurement

    Find slow code with Measure-Command. Learn to benchmark script blocks, compare approaches, and spot performance bottlenecks in your automation.

  6. Scheduled Tasks

    Automate with the ScheduledTasks module. Build tasks from actions, triggers and principals, then register them with Register-ScheduledTask.

  7. Transcript logging

    Record every command and output with Start-Transcript and Stop-Transcript. Create audit trails for change windows and incident response.

  8. Code signing

    Learn PowerShell code signing and trust verification. Follow examples for signed scripts, inspect the results and practice checking trust before execution.

  9. Least privilege automation

    Stop over-privileging automation accounts. Learn to scope service accounts and scheduled tasks to minimum rights without breaking scripts.

  10. JEA

    Learn Just Enough Administration in PowerShell to constrain operator capabilities. Explore examples, understand access models and practice applying the.

  11. Pester

    Learn to write automated PowerShell tests with Pester. Follow worked examples, understand assertions and test results, then practice verifying script.

  12. PSScriptAnalyzer

    Catch bugs before runtime with PSScriptAnalyzer. Run Invoke-ScriptAnalyzer to check code against best-practice rules without executing anything.

  13. Module architecture

    Structure PowerShell modules others can actually use. Learn the conventional layout: public vs private functions, manifests, one function per file.

  14. Desired State Configuration

    Describe what a machine should look like and let DSC make it so. Write Configuration blocks with resources that declare desired state, not steps.

  15. PowerShell in CI/CD

    Learn to treat PowerShell scripts as software in CI/CD workflows. Follow examples, understand automated checks and practice preparing scripts for a pipeline.

  16. Script governance

    Keep your script library from becoming a liability. Learn versioning, review practices, and standards that make automation safe to change.

  17. Operational runbooks

    Write runbooks someone can follow at 3 AM. Learn to document procedures clearly, then automate from the runbook with PowerShell.

Overview

POWERSHELL LEARNING PATHS

Choose by job, not by buzzword. Each path reuses the lessons, scripts, troubleshooting and practice already in PowerShell Genie. Your checked steps are saved only in this browser.

2-MINUTE READINESS CHECK

Find the right place to start

Choose the answer that best matches you. This private, browser-only check recommends a next step; it is not a certification.

YOUR ROLE

Choose a track above and open its first unfinished lesson →

Windows Administrator

WHAT TO DO NEXT

Choose a track above and open its first unfinished lesson →

Next: Shell foundations

Finish the next incomplete step, then prove it with a browser exercise or a troubleshooting scenario.

HOW TO USE A PATH

Choose a track above and open its first unfinished lesson →

Learn → try → troubleshoot → explain

Read enough to understand the model, use the interactive tools to test it, then move into a realistic failure or interview question. That sequence is more useful than collecting cmdlet names.

DEDICATED TRACKS

Follow the platform you actually administer

Role paths now link to deeper tracks that end in projects instead of stopping at reference pages.

Microsoft 365

Graph, Exchange Online, licenses, reports and safe tenant automation.

Entra ID

Directory objects, Graph scopes, lifecycle reporting and application identities.

Azure

Context, inventory, repeatable changes and automation identities.

Microsoft 365 track · Entra ID track · Azure track

Genie guideChoose a learning path

Stop guessing what to learn next. Pick a role and follow a short sequence that connects concepts, practice, troubleshooting and real scripts.